package com.falm.picturebackend.service;

import com.falm.picturebackend.entity.BO.FilesBO;
import com.falm.picturebackend.entity.DTO.FileAddDTO;
import io.minio.errors.*;

import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.List;

public interface FileService {

    /**
     * 上传文件
     * 
     * @param fileAddDTO 文件添加DTO
     */
    void uploadFile(FileAddDTO fileAddDTO)
        throws IOException, ServerException, InsufficientDataException, ErrorResponseException,
        NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException;

    /**
     * 删除文件
     * 
     * @param filePath 文件路径
     */
    void deleteFile(String filePath);

    /**
     * 获取所有文件
     * 
     * @return 文件列表
     */
    List<FilesBO> getAllFileS();
}
